﻿#pragma once

#include "NFServerComm/NFServerCommon/NFIDescStoreEx.h"
#include "NFServerComm/NFServerCommon/NFIDescTemplate.h"
#include "NFComm/NFObjCommon/NFResDb.h"
#include "NFComm/NFObjCommon/NFShmMgr.h"
#include "NFComm/NFShmStl/NFShmHashMap.h"
#include "NFComm/NFShmStl/NFShmVector.h"
#include "NFLogicCommon/NFDescStoreTypeDefines.h"

#define MAX_SERVER_LEVEL_DAYS_NUM 1000

class ServerLevelDescEx : public NF_OBJECT_GLOBAL_TEMPLATE_MACRO(ServerLevelDescEx, EOT_CONST_SERVERLEVEL_DESC_EX_ID, NFIDescStoreEx)
public:
	ServerLevelDescEx();
	virtual ~ServerLevelDescEx();
	int CreateInit();
	int ResumeInit();
public:
	virtual int Load() override;
	virtual int CheckWhenAllDataLoaded() override;
public:
	int GetServerLevelByDays(int iDays) const;
private:
	NFShmVector<int, MAX_SERVER_LEVEL_DAYS_NUM> m_aiDaysIndex;
};
